home *** CD-ROM | disk | FTP | other *** search
/ Aminet 40 / Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso / Aminet / misc / emu / msh-156.lha / han / dos.h < prev    next >
C/C++ Source or Header  |  1996-12-22  |  3KB  |  143 lines

  1.  
  2. /*
  3.  *  $Id: dos.h,v 1.56 1996/12/22 00:22:33 Rhialto Rel $
  4.  *  $Log: dos.h,v $
  5.  * Revision 1.56  1996/12/22  00:22:33  Rhialto
  6.  * Remove old packet names and add some new (Guru Book) ones.
  7.  *
  8.  * Revision 1.55  1993/12/30  23:28:00    Rhialto
  9.  * Freeze for MAXON5.
  10.  *
  11.  * Revision 1.54  1993/06/24  05:12:49    Rhialto
  12.  * DICE 2.07.54R.
  13.  *
  14.  * Revision 1.53  92/10/25  02:44:02  Rhialto
  15.  * No real change.
  16.  *
  17.  * Revision 1.52  92/09/06  00:23:30  Rhialto
  18.  * Didn't believe in leap days and some other days.
  19.  *
  20.  * Revision 1.51  92/04/17  15:38:54  Rhialto
  21.  * Freeze for MAXON3.
  22.  *
  23.  * Revision 1.46  91/10/06  18:26:32  Rhialto
  24.  *
  25.  * Freeze for MAXON
  26.  *
  27.  * Revision 1.42  91/06/14  00:05:47  Rhialto
  28.  * DICE conversion
  29.  *
  30.  * Revision 1.40  91/03/03  17:55:29  Rhialto
  31.  * Freeze for MAXON
  32.  *
  33.  * Revision 1.30  90/06/04  23:18:20  Rhialto
  34.  * Release 1 Patch 3
  35.  *
  36.  */
  37.  
  38. #ifndef EXEC_TYPES_H
  39. #include "exec/types.h"
  40. #endif
  41. #ifndef EXEC_MEMORY_H
  42. #include "exec/memory.h"
  43. #endif
  44. #ifndef EXEC_INTERRUPTS_H
  45. #include "exec/interrupts.h"
  46. #endif
  47. #ifndef EXEC_NODES_H
  48. #include "exec/nodes.h"
  49. #endif
  50. #ifndef EXEC_PORTS_H
  51. #include "exec/ports.h"
  52. #endif
  53. #ifndef EXEC_IO_H
  54. #include "exec/io.h"
  55. #endif
  56. #ifndef LIBRARIES_DOS_H
  57. #include "libraries/dos.h"
  58. #endif
  59. #ifndef LIBRARIES_DOSEXTENS_H
  60. #include "libraries/dosextens.h"
  61. #endif
  62. #ifndef LIBRARIES_FILEHANDLER_H
  63. #include "libraries/filehandler.h"
  64. #endif
  65. #ifndef DEVICES_TRACKDISK_H
  66. #include "devices/trackdisk.h"
  67. #endif
  68. #ifndef DEVICES_TIMER_H
  69. #include "devices/timer.h"
  70. #endif
  71.  
  72. #ifndef CLIB_DOS_PROTOS_H
  73. #include <clib/dos_protos.h>
  74. #endif
  75.  
  76. extern struct DosLibrary *DOSBase;
  77.  
  78. /*
  79.  *  ACTIONS which do not exist in dosextens.h but which indeed exist on
  80.  *  the Amiga.
  81.  */
  82.  
  83. #define ACTION_MORECACHE    18L
  84. #if !defined(ACTION_FLUSH)
  85. #define ACTION_FLUSH        27L
  86. #endif
  87. #if !defined(ACTION_SEEK)
  88. #define ACTION_SEEK        1008L
  89. #endif
  90. #if !defined(ACTION_DIRECT_READ)
  91. #define ACTION_DIRECT_READ  1900L
  92. #endif
  93. #if !defined(ACTION_GET_DISK_FSSM)
  94. #define ACTION_GET_DISK_FSSM    4201L
  95. #define ACTION_FREE_DISK_FSSM    4202L
  96. #endif
  97.  
  98. #if !defined(FIBB_HIDDEN)
  99. #define FIBB_HIDDEN 7L
  100. #define FIBF_HIDDEN (1L<<FIBB_HIDDEN)
  101. #endif
  102.  
  103. #if !defined(DE_DOSTYPE)
  104. #define DE_DOSTYPE        16L
  105. #endif
  106.  
  107. #define CTOB(x)     (((long)(x))>>2)    /*    BCPL conversion */
  108. #define BTOC(x) (void *)(((long)(x))<<2)
  109.  
  110. #define bmov(ss,dd,nn) CopyMem(ss,dd,(ulong)(nn))   /* Matt's habit */
  111.  
  112. #define DOS_FALSE   0L
  113. #define DOS_TRUE    -1L
  114.  
  115. typedef struct Interrupt    INTERRUPT;
  116. typedef struct Task        TASK;
  117. typedef struct FileLock     LOCK;
  118. typedef struct FileInfoBlock    FIB;
  119. typedef struct DosPacket    PACKET;
  120. typedef struct Process        PROC;
  121. typedef struct DeviceNode    DEVNODE;
  122. typedef struct DeviceList    DEVLIST;
  123. typedef struct DosInfo        DOSINFO;
  124. typedef struct RootNode     ROOTNODE;
  125. typedef struct FileHandle    FH;
  126. typedef struct MsgPort        PORT;
  127. typedef struct Message        MSG;
  128. typedef struct MinList        LIST;
  129. typedef struct MinNode        NODE;
  130. typedef struct DateStamp    STAMP;
  131. typedef struct InfoData     INFODATA;
  132. typedef struct DosLibrary    DOSLIB;
  133.  
  134. #define PType (packet->dp_Type)
  135. #define PArg1 (packet->dp_Arg1)
  136. #define PArg2 (packet->dp_Arg2)
  137. #define PArg3 (packet->dp_Arg3)
  138. #define PArg4 (packet->dp_Arg4)
  139. #define PRes1 (packet->dp_Res1)
  140. #define PRes2 (packet->dp_Res2)
  141.  
  142. #define dl_MSFileLockList   dl_unused
  143.